import { test } from "node:test"; import assert from "node:assert/strict"; import { isPrime } from "../src/isPrime.js"; test("isPrime identifies prime numbers", () => { const primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 997]; for (const p of primes) { assert.strictEqual(isPrime(p), true, `${p} should be prime`); } }); test("isPrime identifies composite numbers", () => { const composites = [4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 25, 100]; for (const c of composites) { assert.strictEqual(isPrime(c), false, `${c} should be composite`); } }); test("isPrime handles edge cases", () => { assert.strictEqual(isPrime(0), false); assert.strictEqual(isPrime(1), false); assert.strictEqual(isPrime(-1), false); assert.strictEqual(isPrime(-7), false); }); test("isPrime returns false for non‑integer numbers and special values", () => { assert.strictEqual(isPrime(2.5), false); assert.strictEqual(isPrime(NaN), false); assert.strictEqual(isPrime(Infinity), false); assert.strictEqual(isPrime(-Infinity), false); });